package com.gylang.im.core.myassert;


import com.gylang.im.core.exception.BaseException;

/**
 * @author gylang,
 * date 2020/5/2,
 * @version 1.0
 */
public interface BaseAssert {

    /**
     * 参数校验
     *
     * @param code code
     * @param msg  msg
     */
    void valid(String code, String msg);

    /**
     * 业务层异常
     *
     * @param code code
     * @param msg  msg
     */
    void biz(String code, String msg);

    /**
     * 其他类型异常
     *
     * @param code code
     * @param msg msg
     * @param t    异常类型
     * @param <T>  异常类性
     */
    <T extends BaseException> void other(String code, String msg, Class<T> t);
}
